package org.zhenggn.designpattern.template;

/**
 * 定义抽象类、原语操作等的抽象类
 * Created by zhengguinan on 2017/7/21.
 */
public abstract class AbstractClass {

    /**
     * 原语操作1，即抽象的操作
     */
    public abstract void doPrimitiveOperation1();

    /**
     * 原语操作2，即抽象的操作
     */
    public abstract void doPrimitiveOperation2();


    /**
     * 模板方法，定义算法的骨架
     */
    public final void templateMethod() {
        doPrimitiveOperation1();
        doPrimitiveOperation2();
    }
}
